An example of printed Texinfo output; page 25 of the official GNU Texinfo manual. |
|
Developer(s) | Karl Berry |
---|---|
Stable release | 4.13a (September 22, 2008 ) [±] |
Development status | active |
Written in | C |
Operating system | GNU |
Type | Documentation |
License | GNU General Public License |
Website | http://www.gnu.org/s/texinfo |
Texinfo[1] is a typesetting syntax used for generating documentation in both on-line and printed form (creating filetypes as dvi, html, pdf, etc., and its own hypertext format, info) with a single source file. It is implemented by a computer program released as free and open source software of the same name, created and made available by the GNU Project from the Free Software Foundation.
The main purpose of Texinfo is to provide a way to easily typeset software manuals. Similar to the LaTeX syntax, all the normal features of a book, such as chapters, sections, cross references, tables and indices are available for use in documents. Using the various output generators that are available for Texinfo, it is possible to keep several documentation types up-to-date (such as on-line documentation provided via a Web site, and printed documentation, as generated using the TeX typesetting system) using only a single source file. As the manual notes, "TeX works with virtually all printers; Info works with virtually all computer terminals; the HTML output works with virtually all Web browsers. Thus Texinfo can be used by almost any computer user."
Contents |
In order to make it possible for several documentation output formats to be updated all at once, upon changing the original Texinfo (.texi) source file, several syntax converters are available that can be used to generate transliterations of the Texinfo file into other formats. Most of these are created using the makeinfo program, which is part of the GNU Texinfo distribution.
Notable is the lack of man as an output format from the standard Texinfo tools. True, Texinfo is used for writing the documentation of GNU software, which typically is used in Unix-like environments such as GNU/Linux, where the traditional format for documentation is man. But the design rationale for the standard Texinfo tools' omission of man as an output format is that man pages have a strict conventional format, used traditionally as quick reference guides, whereas typical Texinfo applications are for tutorials as well as reference manuals. As such, no benefit is seen in expressing Texinfo content in man page format. Moreover, many GNU projects eschew man pages almost completely, referring the reader of the provided man page (which often describes itself as seldom maintained) to the Info document.
However, there are third party products to convert info pages to man pages (e.g. info2man). The benefit is that readers can use man and less/more and do not have to learn the emacs keys for info.
Texinfo enables structuring a document like a book with chapters, sections, cross references and indices. The source is almost plain text, but technically it is formatted text marked up by commands that begin with "@
". A sample of a part of a source file:
@ifnottex @node Top @top Short Sample @insertcopying @end ifnottex @menu * First Chapter:: The first chapter is the only chapter in this sample. * Index:: Complete index. @end menu
The commands mark structure such as chapters or denote a part of the source to be processed only for certain types of output.
Texinfo is used as the official documentation system for the GNU Project. Texinfo is licensed under the GNU General Public License.
The Texinfo format was created by Richard M. Stallman, while the Texinfo software distribution development was led by Brian Fox (up to version 3.8) and Karl Berry (afterwards).
|
|